1. Field of the Invention
The present invention relates to an image processing apparatus and image processing method for outputting an inputted image data by matching the color specification to the space for reproduced colors in output units such as color printers, facsimiles and displays.
2. Description of the Prior Art
With an upgraded performance of jet printers and digital still cameras, coupled with their affordability in recent years, more home users are interested in printing an image data with a color printer.
One of the most viable ways for home users is to print out an image data displayed and edited on a color monitor connected to a computer. FIG. 20 shows a conceptual diagram of print processing using the conventional printer disclosed in the Japanese patent application laid open under No. 7-25072.
An application 172 installed on a computer 170 usually uses a drawing command of its operating system to produce and display figure data such as arrows and ellipses. And when the user of the computer 170 instructs the application 172 to print, the operating system converts the figure data produced as above into drawing information a printer driver 173 can interpret, and forwards it to the printer driver 173. The printer driver 173 converts the received drawing information into a printing control language that can be interpreted by the printer, and temporarily holds in a memory storage 174 before forwarding it to a printer 171.
The printing control language is a printer control code (language) for making a printing image of image data, and in most cases, has built-in functions, including drawing figures and printing simple letters. Among the typical printing control languages is a page description language used in a page printer that prepares and outputs printing images by the page. In this case, image data are expressed by the page in the page description language and sent to the printer. A microprocessor within the printer analyzes the data, producing an actual printing image. The typical printing control languages include PostScript, HP-PCL, LIPS, ESC/Page, and PRESCRIBE. Described contents vary depending on the language used but generally speaking, in the case of graphic data or text data, information such as the kind of line, start/end point, shape of a figure, color palette information showing the colors of the figure is described as header information on every detail of each of the figures expressed on one page.
On the printer side, a rasterizing means 175 creates an image data (bitmap data for example) which expresses color data by the pixel for all the figures based on the printing control language received from the memory storage 174 to be held in a page memory 176. And a pixel unit color processing means 177 carries out a series of color processing on the bitmap data as follows.
First, the bitmap data for one page is processed. That is, color palette information expressed by additive mixture of color stimuli such as R (red), G (green), B (blue) etc. held by the bitmap data is color-converted into a subtractive mixture of color stimuli of C (cyan), M (magenta) and Y (yellow). Then with consideration given to the color reproducibility characteristics of the printer, the color converted into the subtractive mixture of color stimuli as mentioned above is modified and brought closer to the color to be reproduced on a monitor. Also, with consideration given to the color reproducibility characteristics of the printer, color space compression is performed to erase the zones of colors the printer cannot reproduce. In addition, K (black) is generated and added to the data—a black generation to produce a four-component mixture—and a gamma correction is performed to adjust the density.
Pixel unit color processing means 177 color-process the image data (CMYK data) per pixel, which is converted into the output gradation level of the printer by gradation processing means 6 and forwarded to a printer engine 7.
The following technique is also possible. That is, bitmap image data restored by rasterizing means 175 is color-processed per pixel by pixel unit color processing means 177, and the data adjusted to the gradation level of outputting equipment by gradation processing means 6 is held in the page memory 176 and handed over to a printer engine 7 by video output.
The conventional image processing apparatus restores image data described in the printing control language in printer driver 173 to bitmap image in the order in which they are inputted, without distinguishing between the command image generated by the drawing command and the photo image that can be expressed only with bitmap data like photo. And because the restored bitmap image is color-processed per pixel, a huge page memory is required to hold bitmap data temporarily, greatly prolonging the color-processing time.
Meanwhile, the image data inputted in the printer is described in a language the printer can interpret, namely a printing control language. And the image data inputted in the display unit is described in a language the display unit can interpret (hereinafter referred to as display control language). In addition, image data inputted in the Graphical Device Interface (GDI) which handles commonly processing for printing and processing for display on Windows is described in a language the GDI can interpret (hereinafter referred to as GDI language).
Here, to convert image data described in the display control language into data suitable for display in the display unit or to process image data described in the GDI control language by the GDI, a problem similar to the case where image data described in the printing control language is handled as above takes place.